Системное программирование
8. Графика и рисование
Использование QPainter:
#include <QWidget>
#include <QPainter>
#include <QPen>
#include <QBrush>
class GraphicsWidget : public QWidget {
Q_OBJECT
protected:
void paintEvent(QPaintEvent *event) override {
QPainter painter(this);
painter.setRenderHint(QPainter::Antialiasing);
QPen pen(Qt::blue, 2);
painter.setPen(pen);
painter.drawLine(10, 10, 100, 100);
painter.setBrush(QBrush(Qt::red, Qt::SolidPattern));
painter.drawRect(120, 10, 100, 80);
painter.setBrush(QBrush(Qt::green, Qt::DiagCrossPattern));
painter.drawEllipse(240, 10, 100, 80);
painter.setPen(Qt::black);
painter.setFont(QFont("Arial", 16));
painter.drawText(10, 150, "Hello, Qt Graphics!");
QPolygon polygon;
polygon << QPoint(10, 200) << QPoint(100, 200)
<< QPoint(100, 250) << QPoint(55, 280)
<< QPoint(10, 250);
painter.drawPolygon(polygon);
}
};